<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>绝对定位</title>
    <style>
        /* 
           - 绝对定位的特点：
                    1.开启绝对定位后，如果不设置偏移量元素的位置不会发生变化
                    2.开启绝对定位后，元素会从文档流中脱离
                    3.绝对定位会改变元素的性质，行内变成块，块的宽高被内容撑开
                    4.绝对定位会使元素提升一个层级
                    5.绝对定位元素是相对于其包含块进行定位的
                (移动当前元素,让元素脱离文档流不占据位置)
           
                    包含块( containing block )
                        - 正常情况下：
                            包含块就是离当前元素最近的祖先块元素
                            <div> <div></div> </div>
                            <div><span><em>hello</em></span></div>

                        - 绝对定位的包含块:
                            包含块就是离它最近的开启了定位的祖先元素，
                                如果所有的祖先元素都没有开启定位则根元素就是它的包含块

                        - html（根元素、初始包含块）
         
         */
        * {
            padding: 0;
            margin: 0;
        }

        .box1,
        .box2,
        .box3 {
            width: 200px;
            height: 200px;
        }

        .box1 {
            background-color:crimson;
        }

        .box2 {
            /* 
              它没有包含块，所以开启绝对定位是相对于HTML元素进行定位的
             */
            background-color: coral;
            position: absolute;
            top:50px;
            left: 50px;

        }


        .box3 {
            background-color:cyan;
        }
    </style>
</head>

<body>
    <div class="box1"></div>
    <div class="box2"></div>
    <div class="box3"></div>
</body>

</html>